package com.itheima.api.integer;

import java.util.ArrayList;

public class Integer2Demo {
    public static void main(String[] args) {
        Integer i1 = (int)100;
        //jdk1.5的特性 ---- 自动装箱
        //装箱: 把一个基本数据类型 变量对应的包装类
        //自动: Java底层会帮我们自动的调用valueof方法
        System.out.println(i1);
        //jdk1.5的特性 ---- 自动拆箱
        //拆箱: 把一个包装类型 变成对应的基本数据类型

        int i2 = i1;
        System.out.println(i2);

        Integer i3 = 100;   //自动装箱
        i3 += 200;  // i3 = i3 + 200;
                    //i3自动拆箱变成基本数据类型int 100;
                    //把运算结果基本数据类型300再次自动装箱变成Integer对象赋值给i3
        System.out.println(i3);

        Integer i4 = null;
        if (i4 != null){
            i4 += 200;  //在对包装类进行操作时需要进行非空判断,否则可能出现空指针异常
            System.out.println(i4);
        }

        ArrayList<Integer> list = new ArrayList<>();
    }
}
